﻿.bb-city {
    position: relative;
}

    .bb-city:not(.disabled):hover .form-select-append {
        display: none;
    }

.dropdown-menu-city {
    --bs-dropdown-padding-y: .5rem;
    --bs-dropdown-padding-x: .5rem;
    --bb-select-search-padding: .5rem 0;
    --bb-select-search-icon-right: 12px;
    --bb-select-search-padding-right: 34px;
    --bb-region-body-color: #495057;
    --bb-region-body-prev-bg-color: #eee;
    --bb-region-body-prev-color: #6c757d;
    --bb-region-body-hover-bg-color: #e9ecef;
    --bb-region-body-active-bg-color: #dee2e6;
    --bb-region-body-hover-color: #000;
    --bb-region-body-active-color: #000;
    --bb-region-body-width: 400px;
    --bb-region-body-height: 400px;
    --bb-region-body-padding: .5rem;
    --bb-region-body-item-padding: 3px 12px;
    --bb-region-body-gap: 5px;
    width: var(--bb-region-body-width);
    height: var(--bb-region-body-height);
    overflow-y: auto;
    flex-direction: column;
}

    .dropdown-menu-city ul {
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: var(--bb-region-body-gap);
    }

    .dropdown-menu-city li {
        list-style: none;
        transition: background-color .3s linear, color .3s linear;
        cursor: pointer;
        padding: var(--bb-region-body-item-padding);
        border-radius: var(--bs-border-radius);
        color: var(--bb-region-body-color);
    }

        .dropdown-menu-city li.prev {
            background-color: var(--bb-region-body-prev-bg-color);
            color: var(--bb-region-body-prev-color);
        }

        .dropdown-menu-city li:hover {
            background-color: var(--bb-region-body-hover-bg-color);
            color: var(--bb-region-body-hover-color);
        }

        .dropdown-menu-city li.active {
            background-color: var(--bb-region-body-active-bg-color);
            color: var(--bb-region-body-active-color);
        }

[data-bs-theme="dark"] .dropdown-menu-city {
    --bb-region-body-color: #c0c4cc;
    --bb-region-body-hover-color: #fff;
    --bb-region-body-active-color: #fff;
    --bb-region-body-hover-bg-color: #495057;
    --bb-region-body-active-bg-color: #6c757d;
}

.show > .dropdown-menu-city {
    display: flex;
}

.dropdown-menu-search .clear-icon {
    cursor: pointer;
}

.dropdown-menu-search:hover .search-icon {
    display: none;
}

.dropdown-menu-search:not(:hover) .clear-icon {
    display: none;
}

.dropdown-menu-search-body {
    flex: 1;
    height: 1%;
    overflow-y: auto;
}

.bb-region-city-item:not(:last-child) {
    margin-bottom: 3px;
    padding-bottom: 3px;
    border-bottom: 1px solid var(--bs-border-color);
}

.bb-region-city-title {
    padding: var(--bb-region-body-item-padding);
    color: var(--bb-region-body-color);
    font-weight: bold;
    cursor: pointer;
}
